package trastienda.negocio;

import java.util.Collection;

import trastienda.dao.ProductoDAO;

import trastienda.excepcion.DAOExcepcion;
import trastienda.modelo.Categoria;
import trastienda.modelo.Producto;

public class GestionProductos {

	public Collection<Producto> buscarPorNombre(String nombre)
			throws DAOExcepcion {
		ProductoDAO dao = new ProductoDAO();
		return dao.buscarPorNombre(nombre);
	}

	public void insertar(Categoria categoria, String nombre,
			String descripcion, int Stock, double precio, int importancia,
			String imagen) throws DAOExcepcion {
		ProductoDAO dao = new ProductoDAO();

		Producto vo = new Producto();
		vo.setCategoria(categoria);
		vo.setNombre(nombre);
		vo.setDescripcion(descripcion);
		vo.setStock(Stock);
		vo.setPrecio(precio);
		vo.setImportancia(importancia);
		vo.setImagen(imagen);
		dao.insertar(vo);

	}

	public Producto obtener(int idProducto) throws DAOExcepcion {
		ProductoDAO dao = new ProductoDAO();
		return dao.obtenerProductoPorId(idProducto);
	}

	public void eliminar(int idProducto) throws DAOExcepcion {
		ProductoDAO dao = new ProductoDAO();
		dao.eliminar(idProducto);
	}

	public Producto actualizar(int idProducto, Categoria categoria,
			String nombre, String descripcion, int Stock, double precio,
			int importancia, String imagen) throws DAOExcepcion {
		ProductoDAO dao = new ProductoDAO();

		Producto vo = new Producto();

		vo.setIdProducto(idProducto);
		vo.setCategoria(categoria);
		vo.setNombre(nombre);
		vo.setDescripcion(descripcion);
		vo.setStock(Stock);
		vo.setPrecio(precio);
		vo.setImportancia(importancia);
		vo.setImagen(imagen);
		return dao.actualizar(vo);
	}

	public Collection<Producto> listar() throws DAOExcepcion {
		ProductoDAO dao = new ProductoDAO();
		System.out.println();
		return dao.listar();
	}
}
